import junit.framework.TestCase;

/**
 * Test cases for Heap
 * @author Matt Dye
 *
 */
public class HeapTest extends TestCase
{
	Heap<Integer> heap = new Heap<Integer>();
	public void testAdd()
	{
		heap.add(5);
		heap.add(2);
		heap.add(3);
		heap.add(1);
		heap.add(9);
		int[] array = {0,1,2,3,5,9};
		Object[] heapArr = heap.getArray();
		for(int i = 1; i < array.length; i++)
		{
			assertEquals(array[i],heapArr[i]);
		}
		
		
	}
	
	public void testRemove()
	{
		heap.add(5);
		heap.add(2);
		heap.add(3);
		heap.add(1);
		heap.add(9);
		heap.add(6);
		heap.add(8);
		heap.remove();
		Object[] heapArr = heap.getArray();
		assertEquals(heapArr[1],2);
		heap.remove();
		assertEquals(heapArr[1],3);
	}
	
}
